/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package upeu.cepre.business;

import java.sql.*;
import java.util.ArrayList;
import java.util.List;
import upeu.cepre.model.Carrera;
import upeu.cepre.util.DataBaseConexion;

/**
 *
 * @author Elvis Zanguetsu
 */
public class CarreraManager {

    public Connection connection;

    public Carrera finById(String idcarrera) {
        Carrera carrera = new Carrera();
        try {
            connection = DataBaseConexion.getConexion();
            PreparedStatement preparedStatement = connection.prepareStatement("select * from carrera where idCarrera=?");
            preparedStatement.setString(1, idcarrera);
            ResultSet rs = preparedStatement.executeQuery();
            if (rs.next()) {
                carrera.setIdCarrera(rs.getString("idCarrera"));
                carrera.setNombre(rs.getString("nombre"));
                carrera.setDescripcion(rs.getString("descripcion"));
                carrera.setFacultad(rs.getString("facultad"));
            }
            connection.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return carrera;
    }

    public List<Carrera> Report() {
        List<Carrera> carreras = new ArrayList<Carrera>();
        CarreraManager carrManag = new CarreraManager();
        try {
            connection = DataBaseConexion.getConexion();
            Statement statement = connection.createStatement();
            PreparedStatement prepareestatemente = connection.prepareStatement("SELECT * FROM  carrera ");

            ResultSet rs = prepareestatemente.executeQuery();
            while (rs.next()) {
                Carrera carrera = new Carrera();

                carrera.setIdCarrera(rs.getString("idCarrera"));
                carrera.setNombre(rs.getString("nombre"));
                carrera.setDescripcion(rs.getString("descripcion"));
                carrera.setFacultad(rs.getString("facultad"));
                carreras.add(carrera);

            }
            connection.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }

        return carreras;
    }

    public Carrera finByNombre(String nombre) {
        Carrera carrera = new Carrera();
        try {
            connection = DataBaseConexion.getConexion();
            PreparedStatement preparedStatement = connection.prepareStatement("select * from carrera where nombre=?");
            preparedStatement.setString(1, nombre);
            ResultSet rs = preparedStatement.executeQuery();
            if (rs.next()) {
                carrera.setIdCarrera(rs.getString("idCarrera"));
                carrera.setNombre(rs.getString("nombre"));
                carrera.setDescripcion(rs.getString("descripcion"));
                carrera.setFacultad(rs.getString("facultad"));
            }
            connection.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }

        return carrera;
    }
}
